package com.comment.pojo.domain.logic.core;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import java.io.Serializable;

import com.baomidou.mybatisplus.extension.handlers.Fastjson2TypeHandler;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
import lombok.extern.slf4j.Slf4j;

/**
 * (CoreBattleTaskRewardConfig)表实体类
 *
 * @author cxy
 * @since 2024-11-20 20:15:59
 */
@ApiModel("$tableInfo.comment")
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@EqualsAndHashCode(callSuper = true)
@Slf4j
public class CoreBattleTaskRewardConfig extends Model<CoreBattleTaskRewardConfig> {// swagger2,mybatis-plus
    ///////////////////////////////////////////////////////////////////////////////////////////////////////// 生成实体字段
    @TableId(type = IdType.AUTO)
    @ApiModelProperty("主键")
    private Long id;
    
    @ApiModelProperty("任务类型")
    private Integer taskType;
    
    @ApiModelProperty("配置名称")
    private String configName;
    
    @ApiModelProperty("任务目标类型")
    private Integer targetType;

    @TableField(typeHandler = Fastjson2TypeHandler.class)
    @ApiModelProperty("目标参数")
    private Long targetValue;
    
    @ApiModelProperty("任务奖励")
    private String taskAward;
    
    ///////////////////////////////////////////////////////////////////////////////////////////////////////// 序列化版本号
    @TableField(exist = false)
    private static final long serialVersionUID = 743024427264606080L;
    /////////////////////////////////////////////////////////////////////////////////////////////////////////// 获取主键值
    @Override
    public Serializable pkVal() {
        return this.id;
    }
    ///////////////////////////////////////////////////////////////////////////////////////////////////////  基础数据初始化
    public CoreBattleTaskRewardConfig init() {
        // log.info("初始化数据:CoreBattleTaskRewardConfig{}",this);
        return this;
    }
    /////////////////////////////////////////////////////////////////////////////////////////////////////////// 领域业务
}

